php 安装sql server驱动及扩展 | 您所在的位置:网站首页 › yum 安装 php 73 › php 安装sql server驱动及扩展 |
作者使用的环境:centos7 ,php7.4 1. 加入微软的源 curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssqlrelease.repo2. 安装驱动 yum install msodbcsql mssql-tools unixODBC-devel注意以上两个驱动安装成功后,当前是支持php7以上的版本 3. 安装扩展 此处提供两种安装扩展的方式:pecl 和原包编译 3.1 pecl sudo pecl install pdo_sqlsrv 如果使用第一种方式,可以跳过3.2原包编译部分,直接阅读3.3 sudo pecl install sqlsrv 3.2 原包编译 3.2.1 下载pdo_sqlsrv扩展包 wget http://pecl.php.net/get/pdo_sqlsrv-5.8.0.tgz这里下载的sqlsrv版本为5.8.0,如需其他版本自行前往查看:http://pecl.php.net/package/pdo_sqlsrv 3.2.2 【解压并进入目录】这里两个步骤:1. 进行解压扩展包 2.并进入扩展包目录 tar -zxvf pdo_sqlsrv-5.8.0.tgz cd pdo_sqlsrv-5.8.0 3.2.3 【执行命令安装】 1. phpize 2. ./configure --with-php-config=/usr/bin/php-config 3. make && make install phpize和php-config 路径,根据自己的环境替换实际路径。 根据提示,将编译完成的so文件拷贝到指定路径。 3.3 加入扩展引用 echo "extension = pdo_sqlsrv.so" >>/etc/php.ini 到这里安装的流程就搞定啦,然后重启PHP,检查扩展是否安装成功 php -m|grep -i sqlsrvc 出现 pdo_sqlsrv 表示安装成功。 3.4 遇到的问题 作者在安装过程,遇到以下问题: PHP Warning: PHP Startup: Unable to load dynamic library 'pdo_sqlsrv.so' (tried: /usr/lib64/php/modules/pdo_sqlsrv.so (/usr/lib64/php/modules/pdo_sqlsrv.so: cannot open shared object file: No such file or directory), /usr/lib64/php/modules/pdo_sqlsrv.so.so (/usr/lib64/php/modules/pdo_sqlsrv.so.so: undefined symbol: php_pdo_register_driver)) in Unknown on line 0解决方案: extension=pdo.soextension=pdo_sqlsrv.so //放到pdo后面。 在查找问题的过程中,有些文章提到swool扩展也有类似的问题,解决方案如下(未验证,有时间的小伙伴可以验证一下): extension=sockets.soextension=swoole.so //放到pdo后面 |
CopyRight 2018-2019 实验室设备网 版权所有 |